package com.dream.technology.service;

import com.dream.technology.db.entity.RcCustomerTag;
import com.dream.technology.db.entity.RcCustomerTagQuery;
import com.dream.technology.db.entity.vo.VoCustomerTag;
import org.apache.ibatis.annotations.Param;

import java.util.List;


public interface RcCustomerTagService {

    int countByExample(RcCustomerTagQuery example);

    int deleteByExample(RcCustomerTagQuery example);

    int deleteByPrimaryKey(Long id);

    int insert(RcCustomerTag record);
    String insertTag(VoCustomerTag record);

    int insertSelective(RcCustomerTag record);

    List<RcCustomerTag> selectByExample(RcCustomerTagQuery example);

    RcCustomerTag selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") RcCustomerTag record, @Param("example") RcCustomerTagQuery example);

    int updateByExample(@Param("record") RcCustomerTag record, @Param("example") RcCustomerTagQuery example);

    int updateByPrimaryKeySelective(RcCustomerTag record);

    int updateByPrimaryKey(RcCustomerTag record);
    public String checkCustomerTag(VoCustomerTag customerTag) ;


    /**
     *  复制用户标签
     * @param id
     * @param tagName
     * @param tagCode
     * @param enabled 
     * @return
     */
    String copy(Long id, String tagName, String tagCode, Boolean enabled);


    /**
     *  修改标签配置
     * @param jsonStr
     * @return
     */
    String updateByJsonStr(VoCustomerTag jsonStr);


    VoCustomerTag selectVoTagByTagId(Long tagId);

}
